WOLF core
WOLF: A Modular Estimation Framework for Robotics
XXXXXXXXXXXXXXXXXXXXXXXXvoid(0)" frameborder="0" name="MSearchResults" id="MSearchResults">
SE3.h File Reference

Go to the source code of this file.

Namespaces

namespace  wolf
 
namespace  wolf::SE3
 

Functions

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 3, 3 > wolf::SE3::Q_helper (const MatrixBase< D1 > &v, const MatrixBase< D2 > &w)
 Q matrix of the left Jacobian of SE(3), with v the linear and w the angular parts of the tangent vector. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_left (const MatrixBase< D > &tangent)
 Left Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_right (const MatrixBase< D > &tangent)
 Right Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_left_inv (const MatrixBase< D > &tangent)
 Inverse of the left Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_right_inv (const MatrixBase< D > &tangent)
 Inverse of the right Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D1 , typename D2 >
void wolf::SE3::identity (MatrixBase< D1 > &p, QuaternionBase< D2 > &q)
 
template<typename D1 , typename D2 >
void wolf::SE3::identity (MatrixBase< D1 > &p, MatrixBase< D2 > &q)
 
template<typename D >
void wolf::SE3::identity (MatrixBase< D > &d)
 
template<typename T = double>
Matrix< T, 7, 1 > wolf::SE3::identity ()
 
void wolf::SE3::identity (VectorComposite &v)
 
VectorComposite wolf::SE3::identityComposite ()
 
template<typename D1 , typename D2 , typename D4 , typename D5 >
void wolf::SE3::inverse (const MatrixBase< D1 > &p, const QuaternionBase< D2 > &q, MatrixBase< D4 > &ip, QuaternionBase< D5 > &iq)
 
template<typename D1 , typename D2 , typename D4 , typename D5 >
void wolf::SE3::inverse (const MatrixBase< D1 > &p, const MatrixBase< D2 > &q, MatrixBase< D4 > &ip, MatrixBase< D5 > &iq)
 
template<typename D1 , typename D2 >
void wolf::SE3::inverse (const MatrixBase< D1 > &d, MatrixBase< D2 > &id)
 
template<typename D >
Matrix< typename D::Scalar, 7, 1 > wolf::SE3::inverse (const MatrixBase< D > &d)
 
void wolf::SE3::inverse (const VectorComposite &v, VectorComposite &c)
 
VectorComposite wolf::SE3::inverse (const VectorComposite &v)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::compose (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D7 > &pc, QuaternionBase< D8 > &qc)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::compose (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &q2, MatrixBase< D7 > &pc, MatrixBase< D8 > &qc)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::compose (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &sum)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::compose (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
template<typename D1 , typename D2 , typename D3 , typename D4 , typename D5 >
void wolf::SE3::compose (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &sum, MatrixBase< D4 > &J_sum_d1, MatrixBase< D5 > &J_sum_d2)
 
void wolf::SE3::compose (const VectorComposite &x1, const VectorComposite &x2, VectorComposite &c)
 
VectorComposite wolf::SE3::compose (const VectorComposite &x1, const VectorComposite &x2)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::between (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D7 > &p12, QuaternionBase< D8 > &q12)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::between (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &q2, MatrixBase< D7 > &p12, MatrixBase< D8 > &q12)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::between (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &d12)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::between (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
void wolf::SE3::between (const VectorComposite &x1, const VectorComposite &x2, VectorComposite &x12)
 
VectorComposite wolf::SE3::between (const VectorComposite &x1, const VectorComposite &x2)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::exp (const MatrixBase< D1 > &rho, const MatrixBase< D2 > &theta, MatrixBase< D3 > &p, QuaternionBase< D4 > &q)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::exp (const MatrixBase< D1 > &rho, const MatrixBase< D2 > &theta, MatrixBase< D3 > &p, MatrixBase< D4 > &q)
 
template<typename D1 , typename D2 >
void wolf::SE3::exp (const MatrixBase< D1 > &tau, MatrixBase< D2 > &delta)
 
template<typename D >
Matrix< typename D::Scalar, 7, 1 > wolf::SE3::exp (const MatrixBase< D > &tau)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::exp (const MatrixBase< D1 > &tau, MatrixBase< D2 > &delta, MatrixBase< D3 > &J_delta_tau)
 
void wolf::SE3::exp (const VectorComposite &tau, VectorComposite &delta)
 
VectorComposite wolf::SE3::exp (const VectorComposite &tau)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::log (const MatrixBase< D1 > &p, const QuaternionBase< D2 > &q, MatrixBase< D3 > &rho, MatrixBase< D4 > &theta)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::log (const MatrixBase< D1 > &p, const MatrixBase< D2 > &q, MatrixBase< D3 > &rho, MatrixBase< D4 > &theta)
 
template<typename D1 , typename D2 >
void wolf::SE3::log (const MatrixBase< D1 > &delta, MatrixBase< D2 > &tau)
 
template<typename D >
Matrix< typename D::Scalar, 6, 1 > wolf::SE3::log (const MatrixBase< D > &delta)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::log (const MatrixBase< D1 > &delta, MatrixBase< D2 > &tau, MatrixBase< D3 > &J_tau_delta)
 
void wolf::SE3::log (const VectorComposite &delta, VectorComposite &tau)
 
VectorComposite wolf::SE3::log (const VectorComposite &delta)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::plus (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &o2, MatrixBase< D7 > &plus_p, QuaternionBase< D8 > &plus_q)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::plus (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &o2, MatrixBase< D7 > &plus_p, MatrixBase< D8 > &plus_q)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::plus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &d_plus)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::plus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
void wolf::SE3::plus (const VectorComposite &x, const VectorComposite &tau, VectorComposite &res)
 
VectorComposite wolf::SE3::plus (const VectorComposite &x, const VectorComposite &tau)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::minus (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D7 > &pd, MatrixBase< D8 > &od)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D6 , typename D7 , typename D8 , typename D9 >
void wolf::SE3::minus (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D6 > &pd, MatrixBase< D7 > &od, MatrixBase< D8 > &J_do_q1, MatrixBase< D9 > &J_do_q2)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::minus (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &q2, MatrixBase< D7 > &pd, MatrixBase< D8 > &od)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::minus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &err)
 
template<typename D1 , typename D2 , typename D3 , typename D4 , typename D5 >
void wolf::SE3::minus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &dif, MatrixBase< D4 > &J_diff_d1, MatrixBase< D5 > &J_diff_d2)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 6, 1 > wolf::SE3::minus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
void wolf::SE3::minus (const VectorComposite &x1, const VectorComposite &x2, VectorComposite &res)
 
VectorComposite wolf::SE3::minus (const VectorComposite &x1, const VectorComposite &x2)
 
template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::interpolate (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, const typename D1::Scalar &t, MatrixBase< D3 > &ret)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::interpolate (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, const typename D1::Scalar &t)
 
void wolf::SE3::interpolate (const VectorComposite &x1, const VectorComposite &x2, const double &t, VectorComposite &res)
 
VectorComposite wolf::SE3::interpolate (const VectorComposite &x1, const VectorComposite &x2, const double &t)
 
template<typename D1 , typename D2 >
void wolf::SE3::toSE3 (const MatrixBase< D1 > &pose, MatrixBase< D2 > &SE3)
 
template<typename D >
Matrix< typename D::Scalar, 4, 4 > wolf::SE3::toSE3 (const MatrixBase< D > &pose)